Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge v2022.04.05 #2

Merged
merged 44 commits into from
Jun 16, 2022
Merged

Merge v2022.04.05 #2

merged 44 commits into from
Jun 16, 2022

Conversation

bgelb
Copy link
Owner

@bgelb bgelb commented Jun 16, 2022

No description provided.

enriavil1 and others added 30 commits February 25, 2022 11:42
* add nosqlite tag

* save
…3675)

Revert "Prevent frequent commits to the node DB in sentries (erigontech#2505)".
This reverts commit 65a9a26.
* Update to erigon-lib stable

* Discovery: throttle node DB commits (erigontech#3581) (erigontech#3656)

UpdateFindFails/UpdateLastPingReceived/UpdateLastPongReceived events
are causing bursty DB commits (100 per minute).

This optimization throttles the disk writes to happen at most once in a few seconds,
because this info doesn't need to be persisted immediately.

This helps on HDD drives.

* Update erigon-lib

* Discovery: split node records to a sepatate DB table (erigontech#3581) (erigontech#3667)

Problem:
QuerySeeds will poke 150 random entries in the whole node DB and ignore hitting "field" entries.
In a bootstrap scenario it might hit hundreds of :lastping :lastpong entries,
and very few true "node record" entries.
After running for 15 minutes I've got totalEntryCount=1508 nodeRecordCount=114 entries.
There's a 1/16 chance of hitting a "node record" entry.
It means finding just about 10 nodes of 114 total on average from 150 attempts.

Solution:
Split "node record" entries to a separate table such that QuerySeeds doesn't do idle cycle hits.

* Discovery: add Context to Listen. (erigontech#3577)

Add explicit Context to ListenV4 and ListenV5.
This makes it possible to stop listening by an external signal.

* Discovery: refactor public key to node ID conversions. (erigontech#3634)

Encode and hash logic was duplicated in multiple places.
* Move encoding to p2p/discover/v4wire
* Move hashing to p2p/enode/idscheme

* Change newRandomLookup to create a proper random key on a curve.

* Discovery: speed up lookup tests (erigontech#3677)

* Update erigon-lib

Co-authored-by: Alexey Sharp <[email protected]>
Co-authored-by: battlmonstr <[email protected]>
* State override support (erigontech#3628)

* added stateOverride type

* solved import cycle

* refactoring

* imported wrong package

* fixed Call arguments

* typo

* override for traceCall

* Fix eth call (erigontech#3618)

* added isFake

* using isFake instead of checkNonce

* Revert "using isFake instead of checkNonce"

This reverts commit 6a202bb.

* Revert "added isFake"

This reverts commit 2c48024.

* only checking EOA if we are checking for Nonce

Co-authored-by: Enrique Jose  Avila Asapche <[email protected]>
Co-authored-by: Enrique Jose  Avila Asapche <[email protected]>
Previously `txCtx` is not updated for every tx, which
leads to wrong tracing results.
* save

* save

* Update to erigon-lib stable

Co-authored-by: Alex Sharp <[email protected]>
* Logs sub (erigontech#3666)

* save

* Add onLogs

* Fix lint

* Add proper logs

* Update go.mod

* goimports

* Add unwind

* feat/rpcadaemon_logs_sub (erigontech#3751)

* Fixes to subscribe logs (erigontech#3769)

* Fixes to subscribe logs

* Add criteria to logs subscription

* Skeleton of RPC daemon event log distribution

* Simplify

* Send aggregated filter to Erigon

* Change API

* Print

* Fixes

* Fix topics filtering

* Fill txHash and blockHash

* Timing logs, fill tx index

* Print

* More print

* Print

* Asynchronous sending of log events to RPC daemon

* Remove prints

* Only extract logs if there are subscribers

* Check empty when RPC daemon is removed

Co-authored-by: Alex Sharp <[email protected]>
Co-authored-by: Alexey Sharp <[email protected]>

* Fix up

* Update to erigon-lib stable

* Update to erigon-lib stable

Co-authored-by: primal_concrete_sledge <[email protected]>
Co-authored-by: Alex Sharp <[email protected]>
Co-authored-by: Alexey Sharp <[email protected]>
…tech#3778)

* Update skip analysis

* Add preverified hashes for mainnet and ropsten

* preverified hashes and bootnode for sepolia

Co-authored-by: Alexey Sharp <[email protected]>

Co-authored-by: Alexey Sharp <[email protected]>
…tech#3832)

* Update skip_analysis

* Preverified hashes

Co-authored-by: Alexey Sharp <[email protected]>

Co-authored-by: Alexey Sharp <[email protected]>
…tech#3824)

* Fix 'all defaults' case for eth_estimateGas

* fix tests

Co-authored-by: Igor Mandrigin <[email protected]>

Co-authored-by: Igor Mandrigin <[email protected]>
Co-authored-by: Igor Mandrigin <[email protected]>
* save

* Restore testdata

Co-authored-by: Alexey Sharp <[email protected]>
AlexeyAkhunov and others added 14 commits April 15, 2022 22:42
* Rollback preverified hashes for mainnet

* Not remove header

* Set verified = true

* Fix verified extendUp and connect

* Skip already persisted links

* Prevent rewriting historical headers

* Not load links after highestInDb

* Restore preverified

* Fix tests

* Fix error handling

Co-authored-by: Alexey Sharp <[email protected]>
Same change as already merged in `devel`
)

Dockerfile requires some --build-arg options.
Fix "docker" target to pass them.
Fix GIT_TAG to reflect the most recent tag related to HEAD, instead of an unrelated most recent tag.
Use it as the image VERSION.

Image tags need to be passed explicitly if needed:

    DOCKER_FLAGS='-t erigon:latest' make docker
* Update version.go

* Fix lint

Co-authored-by: Alexey Sharp <[email protected]>
…ough gaspool is ensured (erigontech#4450)

- noticed the difference when executing testdata#10 in go-ethereum and erigon
@bgelb bgelb merged commit be6de12 into ethbots-release Jun 16, 2022
bgelb added a commit that referenced this pull request Jun 16, 2022
@bgelb bgelb mentioned this pull request Jun 16, 2022
bgelb pushed a commit that referenced this pull request Jul 18, 2022
* progress #1

* progress #2

* proper file naming

* more mature memory mutation
bgelb pushed a commit that referenced this pull request Jul 18, 2022
* experiment #1

* experiment #2

* experiment #3

* experiment 4
bgelb pushed a commit that referenced this pull request Jul 25, 2022
* feat(ci): run hive tests as part of CI

* feat(ci): hive CI tidy up (#2)

run hive on successful CI only
run on non-draft PR only
bgelb pushed a commit that referenced this pull request Jul 25, 2022
* feat(ci): badges for hive and code coverage on devel

* feat(ci): hive CI tidy up (#2)

run hive on successful CI only
run on non-draft PR only
bgelb pushed a commit that referenced this pull request Oct 20, 2023
Sentry connection from tx pool
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

9 participants